'\"macro stdmacro
.\"
.\" Copyright (c) 2022 Ken McDonell.  All Rights Reserved.
.\"
.\" This program is free software; you can redistribute it and/or modify it
.\" under the terms of the GNU General Public License as published by the
.\" Free Software Foundation; either version 2 of the License, or (at your
.\" option) any later version.
.\"
.\" This program is distributed in the hope that it will be useful, but
.\" WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
.\" or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
.\" for more details.
.\"
.\"
.TH PMAUNDELTAINDOM 3 "PCP" "Performance Co-Pilot"
.SH NAME
\f3pmaUndeltaInDom\f1 \- find ``full'' instance domain matching a ``delta'' instance domain
.SH "C SYNOPSIS"
.ft 3
.ad l
.hy 0
#include <pcp/pmapi.h>
.br
#include <pcp/libpcp.h>
.br
#include <pcp/archive.h>
.sp
__pmLogInDom *pmaUndeltaInDom(__pmLogCtl *\fIlcp\fP,
'in +\w'__pmLogInDom *pmaUndeltaInDom('u
__int32_t\ *\fIbuf\fP);
.in
.sp
cc ... \-lpcp_archive \-lpcp
.hy
.ad
.ft 1
.SH CAVEAT
This documentation is intended for internal Performance Co-Pilot
(PCP) developer use.
.PP
These interfaces are not part of the PCP APIs that are guaranteed to
remain fixed across releases, and they may not work, or may provide
different semantics at some point in the future.
.SH DESCRIPTION
.de CR
.ie t \f(CR\\$1\fR\\$2
.el \fI\\$1\fR\\$2
..
Find the loaded ``full'' instance domain that matches a ``delta'' instance
domain.
.PP
The caller ensures the
physical metadata record for the ``delta'' instance domain has been
read into
.IR buf .
The associated archive control structure is identified by
.IR lcp ,
which implies the input archive has also been opened with
.BR pmNewContext (3).
.PP
.B pmaUndeltaInDom
starts by extracting the timestamp and the instance domain number
for the ``delta'' instance domain from
.IR buf .
With this information,
.BR __pmLogSearchInDom (3)
is called to find the matching loaded instance domain, which will
have been converted from a ``delta'' instance domain to a ``full''
instance domain in the process.
.PP
.B pmaUndeltaInDom
is most useful for applications that read physical metadata records and
need to operate on ``full'' instance domains, rather than the ``delta''
instance domains that occur in Version 3 archives.
.SH DIAGNOSTICS AND RETURN VALUES
Lots of warning babble if the matching loaded instance domain
cannot be found, and the return value is NULL in this case.
.SH SEE ALSO
.BR PMAPI (3),
